package com.haoyeteng.sxbd.modular.business.model;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableLogic;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 订单明细表
 * </p>
 *
 * @author haoyeteng123
 * @since 2019-06-27
 */
@TableName("bus_order_dtl")
public class OrderDtl extends Model<OrderDtl> {

    private static final long serialVersionUID = 1L;

    /**
     * 订单明细Id
     */
    @TableId(value = "order_dtl_id", type = IdType.AUTO)
    private Integer orderDtlId;
    /**
     * 订单号
     */
    @TableField("order_id")
    private String orderId;
    /**
     * 商品Id
     */
    @TableField("product_id")
    private Integer productId;
    /**
     * 商品名称
     */
    @TableField("product_name")
    private String productName;
    /**
     * 购买时长
     */
    @TableField("pay_time")
    private Integer payTime;
    /**
     * 计费类型(1年;2月)
     */
    @TableField("charge_type")
    private Integer chargeType;
    /**
     * 单价
     */
    private Float price;
    /**
     * 购买数量
     */
    @TableField("the_count")
    private Integer theCount;
    /**
    /**
     * 关联的购物车物品Id
     */
    @TableField("shop_cart_id")
    private Integer shopCartId;
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    /**
     * 删除标记
     */
    @TableField("flag")
    @TableLogic
    private Integer flag;

    /**
     * 开始时间
     */
    @TableField("start_time")
    private Date startTime;
    /**
     * 结束时间
     */
    @TableField("end_time")
    private Date endTime;
    /**
     * 任务名(站点名)
     */
    @TableField("task_name")
    private String taskName;

    /**
     * 文件个数
     */
    @TableField("file_count")
    private Integer fileCount;
    /**
     * 文件Id
     */
    @TableField("file_ids")
    private String fileIds;
    /**
     * 转换方式
     */
    @TableField("transform_mode")
    private String transformMode;
    /**
     * 播发频率(单位s)
     */
    @TableField("broadcast_frequency")
    private Integer broadcastFrequency;

    /**
     * 订单明细 非数据库字段
     */
    @TableField(exist = false)
    private List<ZbzhFile> zbzhFiles;

    public Integer getOrderDtlId() {
        return orderDtlId;
    }

    public void setOrderDtlId(Integer orderDtlId) {
        this.orderDtlId = orderDtlId;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public Integer getProductId() {
        return productId;
    }

    public void setProductId(Integer productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public Integer getPayTime() {
        return payTime;
    }

    public void setPayTime(Integer payTime) {
        this.payTime = payTime;
    }

    public Integer getChargeType() {
        return chargeType;
    }

    public void setChargeType(Integer chargeType) {
        this.chargeType = chargeType;
    }

    public Float getPrice() {
        return price;
    }

    public void setPrice(Float price) {
        this.price = price;
    }

    public Integer getTheCount() {
        return theCount;
    }

    public void setTheCount(Integer theCount) {
        this.theCount = theCount;
    }

    public Integer getShopCartId() {
        return shopCartId;
    }

    public void setShopCartId(Integer shopCartId) {
        this.shopCartId = shopCartId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Integer getFlag() {
        return flag;
    }

    public void setFlag(Integer flag) {
        this.flag = flag;
    }

    @Override
    protected Serializable pkVal() {
        return this.orderDtlId;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getTaskName() {
        return taskName;
    }

    public void setTaskName(String taskName) {
        this.taskName = taskName;
    }

    public Integer getFileCount() {
        return fileCount;
    }

    public void setFileCount(Integer fileCount) {
        this.fileCount = fileCount;
    }

    public String getFileIds() {
        return fileIds;
    }

    public void setFileIds(String fileIds) {
        this.fileIds = fileIds;
    }

    public String getTransformMode() {
        return transformMode;
    }

    public void setTransformMode(String transformMode) {
        this.transformMode = transformMode;
    }

    public Integer getBroadcastFrequency() {
        return broadcastFrequency;
    }

    public void setBroadcastFrequency(Integer broadcastFrequency) {
        this.broadcastFrequency = broadcastFrequency;
    }

    public List<ZbzhFile> getZbzhFiles() {
        return zbzhFiles;
    }

    public void setZbzhFiles(List<ZbzhFile> zbzhFiles) {
        this.zbzhFiles = zbzhFiles;
    }

    @Override
    public String toString() {
        return "OrderDtl{" +
                "orderDtlId=" + orderDtlId +
                ", orderId='" + orderId + '\'' +
                ", productId=" + productId +
                ", productName='" + productName + '\'' +
                ", payTime=" + payTime +
                ", chargeType=" + chargeType +
                ", price=" + price +
                ", theCount=" + theCount +
                ", shopCartId=" + shopCartId +
                ", createTime=" + createTime +
                ", flag=" + flag +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", taskName='" + taskName + '\'' +
                ", fileCount=" + fileCount +
                ", fileIds='" + fileIds + '\'' +
                ", transformMode='" + transformMode + '\'' +
                ", broadcastFrequency=" + broadcastFrequency +
                '}';
    }
}
